package com.edu.d9_map_impl;

import java.util.*;

public class MapTest {
    /**
     * 集合的嵌套
     * 统计投票的人数
     * 每个学生都可以对A、B、C、D四个景点进行投票，最后计算出票数最高的景点
     */
    public static void main(String[] args) {
        //Map用于收集所投的票
        Map<String, List<String>> map = new HashMap<>();
        //List用于每个人所投票
        List<String> list1 = new ArrayList<>();
        Collections.addAll(list1,"A","B","C");
        map.put("张三",list1);
        List<String> list2 = new ArrayList<>();
        Collections.addAll(list2,"A","B");
        map.put("王五",list2);
        List<String> list3 = new ArrayList<>();
        Collections.addAll(list3,"C","D");
        map.put("赵二",list3);
        List<String> list4 = new ArrayList<>();
        Collections.addAll(list4,"A","C");
        map.put("李四",list4);
        System.out.println(map);
        //遍历所有的人
        //遍历每个人的多个选票
        //每个经典选择的人数,用这个用来计数
        Map<String, Integer> hashMap = new HashMap<>();
        //提取所有人的景点信息，即提取所有人的值
        Collection<List<String>> values = map.values();
        for (List<String> value : values) {
            for (String s : value) {
                if(hashMap.containsKey(s)){
                    hashMap.put(s,hashMap.get(s)+1);
                }else{
                    hashMap.put(s,1);
                }
            }
        }
        System.out.println(hashMap);
    }
}
